#include <iostream>
#include <math.h>

using namespace std;

int main(void){
	int n;
	int nums[]={0,1,2,3,4,5,6,7,8,9};
	cin >> n;
	while (n!=0){
		int *veces= new int[n];
		int **guia=new int*[n];
		for (int i=0;i<n;i++){
			guia[i]=nums;
			veces[i]=pow(10,n-(i+1))-(*guia[i]+1); //El número de veces que tiene que repetirse el guia[i]
			if (veces[i]<=0) veces[i]=1;
			cerr << "[DEBUG] El número " << *guia[i] << " debe repetirse " << veces[i] << " veces" << endl;
		}
		guia[n-1]=nums+1;
		cout << "0";
		while (guia[0]<nums+10){
			for (int i=0;i<n;i++){
				cout << *guia[i];
				veces[i]--;
			}

			for (int i=0;i<n;i++){
				if(veces[i]<=0){
					guia[i]=*(guia+i)+1;
					if (guia[i]>nums+9) {
						if (i>0 && *(guia+(i-1))+1<nums+10) guia[i]= *(guia+(i-1))+1;
						else guia[0]=nums+10;
					}
					if (i!=(n-1)) cout << *guia[i];
					veces[i]=pow(10,n-(i+1))-(*guia[i]+1); //El número de veces que tiene que repetirse el guia[i]
					if (veces[i]<=0) veces[i]=1;
					cerr << "	[DEBUG] El número " << *guia[i] << " debe repetirse " << veces[i] << " veces" << endl;
				}
			}
		}
	cout << "0"<< endl;
	delete []veces;
	delete []guia;
	cin >> n;
	}
}

